آموزش لاراول Laravel گام به گام پروژه محور 2019
موضوع این مقاله، آموزش لاراول Laravel گام به گام پروژه محور 2019 است. در این مثال، از انواع مختلف ورودیها مانند دکمهی رادیویی، checkbox و select box استفاده کردهایم. عملیات CRUD در لاراول بسیار پراهمیت هستند، در عین حال انواع ورودیهای بسیار متنوعی دارند. در این مثال، از لاراول با نسخهی 5.5 استفاده کردهایم. دادهها را در دیتابیس MySQL ایجاد میکنیم، میخوانیم و آپدیت میکنیم. اگر در کار با لاراول مبتدی هستید، ممکن است این نوشته برای شما سودمند باشد.
پیشنیازهای نصب
- PHP با نسخهی 7.0.0 یا بالاتر
- OpenSSL PHP Extension
- PDO PHP Extension
- Mbstring PHP Extension
- Tokenizer PHP Extension
- XML PHP Extension
- آموزش پروژه صفر تا صد لاراول Laravel در سطح مقدماتی
- مرحلهی اول: نصب فریمورک لاراول
- مرحلهی دوم: راهاندازی دیتابیس MySQL در فایل .env
- مرحلهی سوم: یک مدل و فایل migration برای جدول فرمها بسازید.
- مرحلهی چهارم: یک فایل view برای افزودن دادهی فرم به دیتابیس ایجاد کنید.
- مرحلهی پنجم: یک کنترلر (controller) و rout برای نمایش فرم بسازید.
- مرحلهی ششم: اعتبارسنجی (Validation) لاراول 5 را در فرم قرار دهید.
- مرحلهی هفتم: یک صفحهی index برای فهرست کردن coinها بسازید.
- مرحلهی هشتم: یک نمایش ویرایش (edit view) برای آپدیت کردن فرمها ایجاد کنید.
- ویدیو آموزش مقدماتی لاراول Laravel
آموزش پروژه صفر تا صد لاراول Laravel در سطح مقدماتی
مرحلهی اول: نصب فریمورک لاراول
- composer create-project --prefer-dist laravel/laravel coins
با نصب لاراول یک سلسله مرتبه (Hierarchy) به وجود آمده و تمام موارد مربوط به لاراول نیز نصب خواهند شد.
مرحلهی دوم: راهاندازی دیتابیس MySQL در فایل .env
یک دیتابیس در MySQL بسازید و سپس به ادیتور سوئیچ کرده و فایل .env را باز کتید.
- // .env
- DB_CONNECTION=mysql
- DB_HOST=127.0.0.1
- DB_PORT=3306
- DB_DATABASE=laravel
- DB_USERNAME=root
- DB_PASSWORD=
مرحلهی پنجم: یک کنترلر (controller) و rout برای نمایش فرم بسازید.
دستور زیر را در ترمینال وارد کنید.
- php artisan make:controller FormController –resource
با انجام این کار، یک فایل کنترلر به نام FormController.php ساخته میشود که تمام توابع CRUD که در این مثال نیاز دارید را دارد.
در این قسمت، از پارامتر resource استفاده کردهایم، بنابراین به صورت پیشفرض، چند الگوی مسیریابی در اختیار ما قرار میدهد. اما تا زمانی که یک مسیر (rout) را در routes >> web.php file رجیستر نکنیم قابل مشاهده نخواهند بود. پس این کار را انجام میدهیم.
- // web.phpRoute::resource("forms","FormController");
دستور زیر را در ترمینال وارد کنید.
- php artisan route:list
در مرحلهی بعد به فایل FormController.php رفته و به تابع create() چند کد اضافه میکنیم.
- // FormController.php
- /**
- * Show the form for creating a new resource.
- *
- * @return \Illuminate\Http\Response
- */
- publicfunctioncreate()
- {
- returnview("forms.create");
- }
سپس، باید یک سرور Development را استارت کنیم. بنابراین در ترمینال، دستور زیر را وارد کنید.
- php artisan serve
به مرورگر رفته و این لینک را وارد کنید:
http://localhost:8000/products/create
صفحهی زیر را خواهید دید
مرحلهی ششم: اعتبارسنجی (Validation) لاراول 5 را در فرم قرار دهید.
اکنون باید یک action به فرم ایجاد coin وارد کنیم.
- <!-- create.blade.php -->
- <form method="post" action="{{url("forms")}}">
اکنون، باید به مسئلهی CSRF Token رسیدگی کنیم. برای برطرف کردن این مشکل، کد زیر را به فرم اضافه کنید تا خطای expiry page exception از بین برود.
- <!-- create.blade.php -->
- {{csrf_field()}}
اگر مسیرهای resource را میبینید، بنابراین در فایل FormController.php، post request را دارید که آن هم مسیر ‘/forms’ و تابعstore را دارد. تابع function() را برای ذخیرهی داده در دیتابیس کدنویسی کنید.
نکتهای که باید به خاطر داشته باشید این است که باید مدل namespace متعلق به Form.php را در فایل FormController.php فراخوانی کنیم. بنابراین سطر زیر را به ابتدای فایل FormController.php اضافه کنید.
- use App\Form;
همچنین باید اعتبارسنجی را در اینجا قرار دهیم.
- // FormController.php
- publicfunctionstore(Request $request)
- {
- //
- $request->validate([
- "coinname"=>"required",
- "coinprice"=>"required|numeric",
- ]);
- $form=newForm();
- $form->coinname=$request->get("coinname");